/**
 * 
 */
package com.jeearsenal.service;

import java.util.Collection;

import com.jeearsenal.model.User;

/**
 * @author ashish.sinha
 *
 */
public interface IUserService {
	
	/**
	 * to count the number of existing user
	 * @return
	 * 	the number of existing user or a negative number 
	 * 	in case of any error 
	 */
	public long countUser();
	
	/**
	 * to get the list of all users
	 * 
	 * @return collection of user
	 */
	public Collection<User> listUser();
	
	/**
	 * to create a new user.
	 * 
	 * @param user the user detail to be created
	 * @return
	 * 		true only if created successfully, false otherwise.
	 */
	public boolean createUser(User user);
	
	/**
	 * to delete an existing user.
	 * @param user the user to be deleted
	 * @return
	 * 		true only if user exists and is deleted successfully.
	 */
	public boolean deleteUser(User user);
}
